package com.cjkj.equipment.service;

import com.cjkj.equipment.domain.SmartBraceletData;
import com.cjkj.system.api.domain.APIEquipmentUsageRecords;
import com.cjkj.system.api.domain.request.BraceletHistoryDataReq;
import com.cjkj.system.api.domain.request.EquipmentHDAReq;
import com.cjkj.system.api.domain.request.LatestDatasReq;
import com.cjkj.system.api.domain.request.PatientEquipmentRTDReq;

import javax.jms.Message;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 *
 * @author cjkj
 * @date 2024-08-30
 */
public interface SmartBraceletDataService {
    /**
     * 插入手环数据
     **/
    void insertData(SmartBraceletData data);

    void judgeWarn(SmartBraceletData data, APIEquipmentUsageRecords usageRecord);

    /**
     * 处理接收到的数据
     **/
    void processMessage(Message message);

    /**
     * 查询手环数据列表
     **/
    List<SmartBraceletData> listData(String equipmentNo, Date startTime,Date endTime);
    List<SmartBraceletData> listDataBefore(String equipmentNo, Date startTime, Date endTime);

    /**
     * 小程序根据设备使用者ID，时间范围查询手环数据
     */
    Map<String, Object> appListData(EquipmentHDAReq req);

    /**
     * 获取手环最后一条数据
     **/
    SmartBraceletData getLastData(PatientEquipmentRTDReq req);

    /**
     * 获取最新的数据
     */
    List<SmartBraceletData> getLatestDatas(LatestDatasReq req);

    /**
     * 小程序端，手环历史记录查询
     */
    Map<String, Object> getBraceletHistoryData(BraceletHistoryDataReq req);

}
